package com.music.biz;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.music.entity.Album;

public interface AlbumBiz {
	/**
	 * 添加唱片
	 * 
	 * @param album
	 */
	void add(Album album);

	/**
	 * 修改唱片
	 * 
	 * @param album
	 */
	void update(Album album);

	/**
	 * 删除唱片
	 * 
	 * @param id
	 */
	void delete(int id);

	/**
	 * 根据唱片id获得唱片
	 * 
	 * @param id
	 * @return
	 */
	Album fetchById(int id);

	/**
	 * 返回最新的前num个唱片
	 * 
	 * @param num
	 * @return
	 */
	List<Album> getHotAlbums(int num);

	/**
	 * 根据类别编号|名称|编号，名称查询某一页的唱片信息
	 * 
	 * @param genreId
	 * @param title
	 * @param pageNo
	 * @param pageSize
	 * @return
	 */
	List<Album> getAlbumsByConditions(int id, int genreId, String title,
			int pageNo, int pageSize);

	/**
	 * 获取满足查询条件的记录数
	 * 
	 * @param genreId
	 * @param title
	 * @return
	 */
	int getRowCountByConditions(int id, int genreId, String title);
}
